package com.xyoto.community.service;

import com.xyoto.community.dto.PageDTO;
import com.xyoto.community.utils.PageUtils;
import com.xyoto.community.vo.TotalDynamicListVo;
import io.swagger.annotations.ApiModel;
import org.apache.poi.ss.formula.functions.T;

import java.util.List;

/**
 * @author coderFu
 * @create 2021/12/2
 */
@ApiModel("话题热门动态缓存处理服务接口类")
public interface TopicHotDynamicCacheService {

    /**
     * 根据话题id，动态id，添加到分数给话题下的热门动态加分
     * @param topicId
     * @param dynamicId
     * @param operateType
     */
    void addTopicHotDynamicScore(Integer topicId, Integer dynamicId, Integer operateType);

    /**
     * 根据话题id，动态id，将设置为私密的动态删除
     * @param topicId
     * @param dynamicId
     */
    void deleteTopicHotDynamicForMakeAsPersonal(Integer topicId, Integer dynamicId);


    /**
     * 从缓存中获取话题下的热门动态信息
     * @param topicId
     * @param pageDTO
     * @return
     */
    PageUtils<Integer>  getTopicHotDynamicIdListFromCache(Integer topicId, PageDTO pageDTO);

    /**
     * 根据话题id， 动态id， 将话题中的热门动态删除
     * @param topicId
     * @param dynamicId
     */
    void deleteTopicHotDynamicById(Integer topicId, Integer dynamicId);
}
